/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package managers;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import java.sql.*;
import conexionBD.ConexionServidor;
import java.io.Serializable;

/**
 *
 * @author olvarey
 */
@ManagedBean
@SessionScoped
public class managerConsultarSolicitud implements Serializable {
    //Variables para recuperar informacion y ponerla en la pagina xhtml

    private Integer numeroSolicitud;
    //Variables para datos solicitante
    private String primerNombreSolicitante;
    private String segundoNombreSolicitante;
    private String primerApellidoSolicitante;
    private String segundoApellidoSolicitante;
    private Integer duiSolicitante;
    private Integer telefonoResidenciaSolicitante;
    private Integer telefonoOficinaSolicitante;
    private Integer telefonoFaxCelularSolicitante;
    //Variables para valores seleccionados: departamento, municipio y persona que solicita -- Solicitante
    private String departamentoSolicitante;
    private String municipioSolicitante;
    private String solicitanteSeleccionado;
    //Variables para tipo de intervencion
    private String tipoIntervencion;
    //Variables para datos del inmueble
    
    private String direccionInmueble;
    //Variables para los valores seleccionados: departamento y municipio -- Inmueble
    private String departamentoInmueble;
    private String municipioInmueble;
    //Variables para los usos
    private String usoOriginal;
    private String usoActual;
    private String usoDestinado;
    private Long matriculaCNR;
    private String nombreConstructorDisenador;
    private String fechaConstruccion;
    //Variables para datos Colindante
    private String colindanteNorte;
    private String colindanteSur;
    private String colindanteEste;
    private String colindanteOeste;
    //Variables para el propietario
    private String primerNombrePropietario;
    private String segundoNombrePropietario;
    private String primerApellidoPropietario;
    private String segundoApellidoPropietario;
    private Integer duiPropietario;
    private Integer telefonoResidenciaPropietario;
    private Integer telefonoOficinaPropietario;
    private Integer telefonoFaxCelularPropietario;
    private String emailPropietario;
    private String direccionPropietario;
    //Variables para los valores seleccionados: departamento y municipio -- Propietario
    private String departamentoPropietario;
    private String municipioPropietario;
    //Variables para profesional responsable
    private String primerNombreResponsable;
    private String segundoNombreResponsable;
    private String primerApellidoResponsable;
    private String segundoApellidoResponsable;
    private Integer duiResponsable;
    private Integer telefonoResidenciaResponsable;
    private Integer telefonoOficinaResponsable;
    private Integer telefonoFaxCelularResponsable;
    private String numeroRegistroResponsable;
    private String emailResponsable;
    private String direccionResponsable;
    //Variables para los valores seleccionados: departamento y municipio -- Profesional responsable
    private String departamentoResponsable;
    private String municipioResponsable;
    private String profesionResponsable;

    /** Creates a new instance of managerConsultarSolicitud */
    public managerConsultarSolicitud() {
      
    }

    public String getColindanteEste() {
        return colindanteEste;
    }

    public void setColindanteEste(String colindanteEste) {
        this.colindanteEste = colindanteEste;
    }

    public String getColindanteNorte() {
        return colindanteNorte;
    }

    public void setColindanteNorte(String colindanteNorte) {
        this.colindanteNorte = colindanteNorte;
    }

    public String getColindanteOeste() {
        return colindanteOeste;
    }

    public void setColindanteOeste(String colindanteOeste) {
        this.colindanteOeste = colindanteOeste;
    }

    public String getColindanteSur() {
        return colindanteSur;
    }

    public void setColindanteSur(String colindanteSur) {
        this.colindanteSur = colindanteSur;
    }

    public String getDepartamentoInmueble() {
        return departamentoInmueble;
    }

    public void setDepartamentoInmueble(String departamentoInmueble) {
        this.departamentoInmueble = departamentoInmueble;
    }

    public String getDepartamentoPropietario() {
        return departamentoPropietario;
    }

    public void setDepartamentoPropietario(String departamentoPropietario) {
        this.departamentoPropietario = departamentoPropietario;
    }

    public String getDepartamentoResponsable() {
        return departamentoResponsable;
    }

    public void setDepartamentoResponsable(String departamentoResponsable) {
        this.departamentoResponsable = departamentoResponsable;
    }

    public String getDepartamentoSolicitante() {
        return departamentoSolicitante;
    }

    public void setDepartamentoSolicitante(String departamentoSolicitante) {
        this.departamentoSolicitante = departamentoSolicitante;
    }

    public String getDireccionInmueble() {
        return direccionInmueble;
    }

    public void setDireccionInmueble(String direccionInmueble) {
        this.direccionInmueble = direccionInmueble;
    }

    public String getDireccionPropietario() {
        return direccionPropietario;
    }

    public void setDireccionPropietario(String direccionPropietario) {
        this.direccionPropietario = direccionPropietario;
    }

    public String getDireccionResponsable() {
        return direccionResponsable;
    }

    public void setDireccionResponsable(String direccionResponsable) {
        this.direccionResponsable = direccionResponsable;
    }

    public Integer getDuiPropietario() {
        return duiPropietario;
    }

    public void setDuiPropietario(Integer duiPropietario) {
        this.duiPropietario = duiPropietario;
    }

    public Integer getDuiResponsable() {
        return duiResponsable;
    }

    public void setDuiResponsable(Integer duiResponsable) {
        this.duiResponsable = duiResponsable;
    }

    public Integer getDuiSolicitante() {
        return duiSolicitante;
    }

    public void setDuiSolicitante(Integer duiSolicitante) {
        this.duiSolicitante = duiSolicitante;
    }

    public String getEmailPropietario() {
        return emailPropietario;
    }

    public void setEmailPropietario(String emailPropietario) {
        this.emailPropietario = emailPropietario;
    }

    public String getEmailResponsable() {
        return emailResponsable;
    }

    public void setEmailResponsable(String emailResponsable) {
        this.emailResponsable = emailResponsable;
    }

    public String getFechaConstruccion() {
        return fechaConstruccion;
    }

    public void setFechaConstruccion(String fechaConstruccion) {
        this.fechaConstruccion = fechaConstruccion;
    }
   
    public Long getMatriculaCNR() {
        return matriculaCNR;
    }

    public void setMatriculaCNR(Long matriculaCNR) {
        this.matriculaCNR = matriculaCNR;
    }

    public String getMunicipioInmueble() {
        return municipioInmueble;
    }

    public void setMunicipioInmueble(String municipioInmueble) {
        this.municipioInmueble = municipioInmueble;
    }

    public String getMunicipioPropietario() {
        return municipioPropietario;
    }

    public void setMunicipioPropietario(String municipioPropietario) {
        this.municipioPropietario = municipioPropietario;
    }

    public String getMunicipioResponsable() {
        return municipioResponsable;
    }

    public void setMunicipioResponsable(String municipioResponsable) {
        this.municipioResponsable = municipioResponsable;
    }

    public String getMunicipioSolicitante() {
        return municipioSolicitante;
    }

    public void setMunicipioSolicitante(String municipioSolicitante) {
        this.municipioSolicitante = municipioSolicitante;
    }

   
    public String getNombreConstructorDisenador() {
        return nombreConstructorDisenador;
    }

    public void setNombreConstructorDisenador(String nombreConstructorDisenador) {
        this.nombreConstructorDisenador = nombreConstructorDisenador;
    }

    public String getNumeroRegistroResponsable() {
        return numeroRegistroResponsable;
    }

    public void setNumeroRegistroResponsable(String numeroRegistroResponsable) {
        this.numeroRegistroResponsable = numeroRegistroResponsable;
    }

    public Integer getNumeroSolicitud() {
        return numeroSolicitud;
    }

    public void setNumeroSolicitud(Integer numeroSolicitud) {
        this.numeroSolicitud = numeroSolicitud;
    }

    public String getPrimerApellidoPropietario() {
        return primerApellidoPropietario;
    }

    public void setPrimerApellidoPropietario(String primerApellidoPropietario) {
        this.primerApellidoPropietario = primerApellidoPropietario;
    }

    public String getPrimerApellidoResponsable() {
        return primerApellidoResponsable;
    }

    public void setPrimerApellidoResponsable(String primerApellidoResponsable) {
        this.primerApellidoResponsable = primerApellidoResponsable;
    }

    public String getPrimerApellidoSolicitante() {
        return primerApellidoSolicitante;
    }

    public void setPrimerApellidoSolicitante(String primerApellidoSolicitante) {
        this.primerApellidoSolicitante = primerApellidoSolicitante;
    }

    public String getPrimerNombrePropietario() {
        return primerNombrePropietario;
    }

    public void setPrimerNombrePropietario(String primerNombrePropietario) {
        this.primerNombrePropietario = primerNombrePropietario;
    }

    public String getPrimerNombreResponsable() {
        return primerNombreResponsable;
    }

    public void setPrimerNombreResponsable(String primerNombreResponsable) {
        this.primerNombreResponsable = primerNombreResponsable;
    }

    public String getPrimerNombreSolicitante() {
        return primerNombreSolicitante;
    }

    public void setPrimerNombreSolicitante(String primerNombreSolicitante) {
        this.primerNombreSolicitante = primerNombreSolicitante;
    }

    public String getProfesionResponsable() {
        return profesionResponsable;
    }

    public void setProfesionResponsable(String profesionResponsable) {
        this.profesionResponsable = profesionResponsable;
    }

    public String getSegundoApellidoPropietario() {
        return segundoApellidoPropietario;
    }

    public void setSegundoApellidoPropietario(String segundoApellidoPropietario) {
        this.segundoApellidoPropietario = segundoApellidoPropietario;
    }

    public String getSegundoApellidoResponsable() {
        return segundoApellidoResponsable;
    }

    public void setSegundoApellidoResponsable(String segundoApellidoResponsable) {
        this.segundoApellidoResponsable = segundoApellidoResponsable;
    }

    public String getSegundoApellidoSolicitante() {
        return segundoApellidoSolicitante;
    }

    public void setSegundoApellidoSolicitante(String segundoApellidoSolicitante) {
        this.segundoApellidoSolicitante = segundoApellidoSolicitante;
    }

    public String getSegundoNombrePropietario() {
        return segundoNombrePropietario;
    }

    public void setSegundoNombrePropietario(String segundoNombrePropietario) {
        this.segundoNombrePropietario = segundoNombrePropietario;
    }

    public String getSegundoNombreResponsable() {
        return segundoNombreResponsable;
    }

    public void setSegundoNombreResponsable(String segundoNombreResponsable) {
        this.segundoNombreResponsable = segundoNombreResponsable;
    }

    public String getSegundoNombreSolicitante() {
        return segundoNombreSolicitante;
    }

    public void setSegundoNombreSolicitante(String segundoNombreSolicitante) {
        this.segundoNombreSolicitante = segundoNombreSolicitante;
    }

    public String getSolicitanteSeleccionado() {
        return solicitanteSeleccionado;
    }

    public void setSolicitanteSeleccionado(String solicitanteSeleccionado) {
        this.solicitanteSeleccionado = solicitanteSeleccionado;
    }

    public Integer getTelefonoFaxCelularPropietario() {
        return telefonoFaxCelularPropietario;
    }

    public void setTelefonoFaxCelularPropietario(Integer telefonoFaxCelularPropietario) {
        this.telefonoFaxCelularPropietario = telefonoFaxCelularPropietario;
    }

    public Integer getTelefonoFaxCelularResponsable() {
        return telefonoFaxCelularResponsable;
    }

    public void setTelefonoFaxCelularResponsable(Integer telefonoFaxCelularResponsable) {
        this.telefonoFaxCelularResponsable = telefonoFaxCelularResponsable;
    }

    public Integer getTelefonoFaxCelularSolicitante() {
        return telefonoFaxCelularSolicitante;
    }

    public void setTelefonoFaxCelularSolicitante(Integer telefonoFaxCelularSolicitante) {
        this.telefonoFaxCelularSolicitante = telefonoFaxCelularSolicitante;
    }

    public Integer getTelefonoOficinaPropietario() {
        return telefonoOficinaPropietario;
    }

    public void setTelefonoOficinaPropietario(Integer telefonoOficinaPropietario) {
        this.telefonoOficinaPropietario = telefonoOficinaPropietario;
    }

    public Integer getTelefonoOficinaResponsable() {
        return telefonoOficinaResponsable;
    }

    public void setTelefonoOficinaResponsable(Integer telefonoOficinaResponsable) {
        this.telefonoOficinaResponsable = telefonoOficinaResponsable;
    }

    public Integer getTelefonoOficinaSolicitante() {
        return telefonoOficinaSolicitante;
    }

    public void setTelefonoOficinaSolicitante(Integer telefonoOficinaSolicitante) {
        this.telefonoOficinaSolicitante = telefonoOficinaSolicitante;
    }

    public Integer getTelefonoResidenciaPropietario() {
        return telefonoResidenciaPropietario;
    }

    public void setTelefonoResidenciaPropietario(Integer telefonoResidenciaPropietario) {
        this.telefonoResidenciaPropietario = telefonoResidenciaPropietario;
    }

    public Integer getTelefonoResidenciaResponsable() {
        return telefonoResidenciaResponsable;
    }

    public void setTelefonoResidenciaResponsable(Integer telefonoResidenciaResponsable) {
        this.telefonoResidenciaResponsable = telefonoResidenciaResponsable;
    }

    public Integer getTelefonoResidenciaSolicitante() {
        return telefonoResidenciaSolicitante;
    }

    public void setTelefonoResidenciaSolicitante(Integer telefonoResidenciaSolicitante) {
        this.telefonoResidenciaSolicitante = telefonoResidenciaSolicitante;
    }

    public String getTipoIntervencion() {
        return tipoIntervencion;
    }

    public void setTipoIntervencion(String tipoIntervencion) {
        this.tipoIntervencion = tipoIntervencion;
    }

    public String getUsoActual() {
        return usoActual;
    }

    public void setUsoActual(String usoActual) {
        this.usoActual = usoActual;
    }

    public String getUsoDestinado() {
        return usoDestinado;
    }

    public void setUsoDestinado(String usoDestinado) {
        this.usoDestinado = usoDestinado;
    }

    public String getUsoOriginal() {
        return usoOriginal;
    }

    public void setUsoOriginal(String usoOriginal) {
        this.usoOriginal = usoOriginal;
    }

    public String buscarSolicitud() {
        String destino = null;
        ConexionServidor miConexion = new ConexionServidor();
        try {
            Connection con = miConexion.getConnection();
            PreparedStatement ps = con.prepareStatement("select * from vista_solicitud where idingresosol = ?");
            ps.setInt(1, numeroSolicitud);
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                //Extraccion de informacion de solicitante
                primerNombreSolicitante = rs.getString("primernombre_sol");
                segundoNombreSolicitante = rs.getString("segundonombre_sol");
                primerApellidoSolicitante = rs.getString("primerapellido_sol");
                segundoApellidoSolicitante = rs.getString("segundoapellido_sol");
                duiSolicitante = rs.getInt("dui_sol");
                telefonoResidenciaSolicitante = formatearNumeroTelefono(rs.getInt("telresidencia_sol"));
                telefonoFaxCelularSolicitante = formatearNumeroTelefono(rs.getInt("telefax_sol"));
                telefonoOficinaSolicitante = formatearNumeroTelefono(rs.getInt("teloficina_sol"));
                departamentoSolicitante = rs.getString("depto_soli");
                municipioSolicitante = rs.getString("muni_soli");
                //Extraccion de informacion tipo de intervencion
                tipoIntervencion = rs.getString("tipointervencion");
                //Extraccion de informacion de inmueble
                direccionInmueble = rs.getString("direccion_inm");
                departamentoInmueble = rs.getString("depto_inm");
                municipioInmueble = rs.getString("muni_inm");
                usoOriginal = rs.getString("uso_original");
                usoActual = rs.getString("uso_actual");
                usoDestinado = rs.getString("uso_destinado");
                matriculaCNR = rs.getLong("matriculacnr");
                colindanteNorte = rs.getString("alnorte");
                colindanteSur = rs.getString("alsur");
                colindanteEste = rs.getString("aleste");
                colindanteOeste = rs.getString("aloeste");
                nombreConstructorDisenador = rs.getString("constructor");
                fechaConstruccion = rs.getString("fechaconstruccion");
                //Extracccion de informacion de propietario
                primerNombrePropietario = rs.getString("primernombre_pro");
                segundoNombrePropietario = rs.getString("segundonombre_pro");
                primerApellidoPropietario = rs.getString("primerapellido_pro");
                segundoApellidoPropietario = rs.getString("segundoapellido_pro");
                duiPropietario = rs.getInt("dui_pro");
                telefonoResidenciaPropietario = formatearNumeroTelefono(rs.getInt("telresidencia_pro"));
                telefonoOficinaPropietario = formatearNumeroTelefono(rs.getInt("teloficina_pro"));
                telefonoFaxCelularPropietario = formatearNumeroTelefono(rs.getInt("telefax_pro"));
                departamentoPropietario = rs.getString("depto_prop");
                municipioPropietario = rs.getString("muni_pro");
                emailPropietario = rs.getString("email_pro");
                direccionPropietario = rs.getString("direccion_pro");
                //Extraccion de informacion del profesional responsable
                primerNombreResponsable = rs.getString("primernombre_resp");
                segundoNombreResponsable = rs.getString("segundonombre_resp");
                primerApellidoResponsable = rs.getString("primerapellido_resp");
                segundoApellidoResponsable = rs.getString("segundoapellido_resp");
                duiResponsable = rs.getInt("dui_resp");
                telefonoResidenciaResponsable = formatearNumeroTelefono(rs.getInt("telresidencia_resp"));
                telefonoOficinaResponsable = formatearNumeroTelefono(rs.getInt("teloficina_resp"));
                telefonoFaxCelularResponsable = formatearNumeroTelefono(rs.getInt("telefax_resp"));
                departamentoResponsable = rs.getString("depto_resp");
                municipioResponsable = rs.getString("muni_resp");
                profesionResponsable = rs.getString("nombreprofesion");
                numeroRegistroResponsable = rs.getString("registro_resp");
                emailResponsable = rs.getString("email_resp");
                direccionResponsable = rs.getString("direccion_resp");
            }
            rs.close();
            ps.close();
            con.close();
        } catch (Exception ex) {
            System.out.println(ex.getMessage());
        }
        return destino;
    }
//Metodo que formatea la salida de los campos de telefono
    public Integer formatearNumeroTelefono(Integer valorDB) {
        Integer numeroFormateado;
        if (valorDB == 0) {
            numeroFormateado = null;
        } else {
            numeroFormateado = valorDB;
        }
        return numeroFormateado;
    }
}
